import axios from 'axios'
import { Message } from 'element-ui'
import store from '../store'
// import { getToken } from '../utils/auth'

// 创建axios实例
const service = axios.create({
    // baseURL: prod.env.BASE_API, // api 的 base_url
    baseURL: "http://192.168.124.34:8085", // api 的 base_url
    withCredentials: true,
    method: "post",
    timeout: 50000, // 请求超时时间
    headers:{
        'Content-Type': 'Access-Control-Allow-Origin'
    }

});

// request拦截器
// service.interceptors.request.use(
//   config => {
//     config.headers['X-Requested-With'] = 'XMLHttpRequest'
//     // if (store.getters.token) {
//     //   config.headers['X-Token'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
//     // }
//     return config
//   },
//   error => {
//     // Do something with request error
//     console.log(error) // for debug
//     Promise.reject(error)
//   }
// )

// response 拦截器
service.interceptors.response.use(
    response => {
        // console.debug('response' + response.data) // for debug
        /**
         * code为非20000是抛错 可结合自己业务进行修改
         */
        const res = response.data
        // if (res.code !== 20000 && res.code !== 200 && res.code !== 500) {
        //   console.debug('errres.code' + res) // for debug
        //   Message({
        //     message: res.message,
        //     type: 'error',
        //     duration: 5 * 1000
        //   })
        //
        //   // 50008:非法的token; 50012:其他客户端登录了;  50014:Token 过期了;
        //   if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
        //     MessageBox.confirm(
        //       '你已被登出，可以取消继续留在该页面，或者重新登录',
        //       '确定登出',
        //       {
        //         confirmButtonText: '重新登录',
        //         cancelButtonText: '取消',
        //         type: 'warning'
        //       }
        //     ).then(() => {
        //       store.dispatch('FedLogOut').then(() => {
        //         location.reload() // 为了重新实例化vue-router对象 避免bug
        //       })
        //     })
        //   }
        //   return response.data
        //   // console.log('数据返回错误')
        //   // console.log(res)
        //   // console.log(response.data)
        // } else {
        //   return response.data
        // }
        return response.data
    },
    error => {
        // if (error.response) {
        //   switch (error.response.status) {
        //     case 401:
        //     case 403:
        //       if (error.response.data) {
        //         const callback = error.response.data.msg
        //         if (localStorage.getItem('fromtop') === '1') {
        //           console.error('会话超时,请重新登录.')
        //           if(error.response.status === 401){
        //           Message({
        //             message: '会话超时，请重新登录！',
        //             type: 'error',
        //             duration: 5 * 1000
        //           })
        //       }
        //           return
        //         } else {
        //           window.location.href = callback
        //           return Promise.reject('error')
        //         }
        //       }
        //       break;
        //   }
    }

    //   if (error.code) {
    //     if (error.message === 'timeout of 5000ms exceeded') {
    //       Message({
    //         message: '请求超时',
    //         type: 'error',
    //         duration: 5 * 1000
    //       })
    //     }
    //     return Promise.reject(error)
    //   } else {
    //     // Message({
    //     //   message: '请求服务器失败',
    //     //   type: 'error',
    //     //   duration: 5 * 1000
    //     // })
    //   }
    //   // return Promise.reject(error)
    // }
)

export default service
